/**
**********************************************************************************************************************************************************************************************************************************
* @file:	main.c
* @author:	zinface
* @date:	2021年10月20日 19:53:43 星期三
* @brief:	一个简单的内核模块程序
**********************************************************************************************************************************************************************************************************************************
**/

// #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>

#define KERN_INFO_LOG(fmt, ...) \
    printk(KERN_INFO fmt, ##__VA_ARGS__);


/****************** Welcomee ************************/
static const struct {
    const char *hello;
    const char *bye;
} load_greetings = {
    .hello = "======= Welcome to Linux Kernel =======",
    .bye   = "======= Goodle bye Linux Kernel ======="
};
/****************************************************/

int init_module(void) {
    KERN_INFO_LOG("%s\n", load_greetings.hello);

    return 0;
}
void cleanup_module(void) {
    KERN_INFO_LOG("%s\n", load_greetings.bye);

}

MODULE_LICENSE("GPL");
MODULE_AUTHOR("zinface <zinface@163.com>");
MODULE_DESCRIPTION("一个简单的内核模块程序");
MODULE_VERSION("0.1");

/**********************************************************************************
filename:       /home/zinface/Desktop/kernel-modules/./hello-world.ko
description:    一个简单的内核模块程序
author:         zinface <zinface@163.com>
license:        GPL
srcversion:     2477A2D5B15DE654AADE359
depends:        
retpoline:      Y
name:           hello_world
vermagic:       5.10.60-amd64-desktop SMP mod_unload 
**********************************************************************************/